# config.py

import os
from dotenv import load_dotenv
from pathlib import Path

# 定位到项目根目录下的 .env 文件
env_path = Path('.') / '.env'
load_dotenv(dotenv_path=env_path)

class Config:
    # 数据库配置
    SQLALCHEMY_DATABASE_URI = os.getenv('DATABASE_URI', 'mysql://root:root@localhost/dco_webhook_db')
    SQLALCHEMY_TRACK_MODIFICATIONS = False

    # Webhook 配置
    WEBHOOK_SECRET = os.getenv('WEBHOOK_SECRET', '')

    # 日志配置
    LOG_FILE = os.getenv('LOG_FILE', 'logs/app.log')

    # 邮件配置（可选）
    EMAIL_SUBJECT = os.getenv('EMAIL_SUBJECT', 'DCO 验证失败 - 新的提交')
    EMAIL_BODY_TEMPLATE = os.getenv('EMAIL_BODY_TEMPLATE', '以下提交缺少有效的 `Signed-off-by` 行，请在每次提交时使用 `git commit -s` 添加签名：\n\n')

    # SMTP 配置（用于 send_email.py）
    SMTP_SERVER = os.getenv('SMTP_SERVER', '2742645790@qq.com')
    SMTP_PORT = int(os.getenv('SMTP_PORT', 587))
    SMTP_USERNAME = os.getenv('SMTP_USERNAME', '2742645790@qq.com')
    SMTP_PASSWORD = os.getenv('SMTP_PASSWORD', 'vfostijcuyyndhai')
    FROM_EMAIL = os.getenv('FROM_EMAIL', '2742645790@qq.com')

    # AtomGit
    OAUTH2_CLIENT_ID= os.getenv('OAUTH2_CLIENT_ID', '58b345ff491143fe')
    OAUTH2_CLIENT_SECRET= os.getenv('OAUTH2_CLIENT_SECRET', '18114a5207c8440e827242f4')
